import service from '../internal/service.js'

/**
 * 每小时门店客流统计
 * @param {Object: shop} 店铺id
 * @param {Object: date} 日期 (默认值：当前日期)
 */
export function APIGetHourlyCustomerData ({ shop, date = '' }) {
  return service({
    url: `api/shops/${shop}/hourly-stats/?date=${date}`,
    method: 'get'
  })
}

/**
 * 热区图数据
 * @param {Object: shop} 店铺id
 * @param {Object: date} 日期 (默认值：当前日期)
 */
export function APIGetHeatMapData ({ shop, start = '', end }) {
  return service({
    url: `api/shops/${shop}/heat-map/?start=${start}&end=${end}`,
    method: 'get'
  })
}

/**
 * 获取区域客流数据
 * @param {Object: shop} 店铺id
 * @param {Object: date} 日期 (默认值：当前日期)
 */
export function APIGetAreaFlowData ({ shop, date = '' }) {
  return service({
    url: `api/shops/${shop}/daily-zone-stats/?date=${date}`,
    method: 'get'
  })
}

/**
 * 获取通知列表
 * @param {Object: shop} 店铺id
 */
export function APIGetNotificationsList ({ shop }) {
  return service({
    url: `api/shops/${shop}/notifications`,
    method: 'get'
  })
}

/**
 * 获取实时的客流数据
 * @param {Object: shop} 店铺id
 */
export function APIGetRealTimeCustomerData ({ shop }) {
  return service({
    url: `/api/shops/${shop}/real-time-stats`,
    method: 'get'
  })
}

/**
 * 获取客流数据
 * @param {Object: shop} 店铺id
 * @param {Object: date} 日期 (默认值：当前日期)
 */
export function APIGetCustomerFlowData ({ shop, date = '' }) {
  return service({
    url: `api/shops/${shop}/daily-stats/?date=${date}`,
    method: 'get'
  })
}

/**
 * 每小时区域客流统计
 * @param {Object: shop} 店铺id
 * @param {Object: date} 日期 (默认值：当前日期)
 */
export function APIGetHourlyAreaCustomerData ({ shop, date = '' }) {
  return service({
    url: `/api/shops/${shop}/hourly-zone-stats/?date=${date}`,
    method: 'get'
  })
}

/**
 * 获取监控列表
 * @param {Object: shop} 店铺id
 */
export function APIGetShopMonitoringList ({ shop }) {
  return service({
    url: `/api/shops/${shop}/cameras`,
    method: 'get'
  })
}

export function APISetNotificationsStatus ({ shop }) {
  return service({
    url: `/api/shops/${shop}/notifications/set-read`,
    method: 'put'
  })
}

export function APISaveDateToDesktop ({ shop }) {
  return service({
    url: `/api/shops/${shop}/hourly-stats/export`,
    method: 'get'
  })
}

// 本门店统计（每天） 连续多日
export function APIDailyRangeStatus ({ shop, startDate, endDate }) {
  return service({
    url: `/api/shops/${shop}/daily-range-stats?start_date=${startDate}&end_date=${endDate}`,
    method: 'get'
  })
}

/**
 * 每分钟客流统计
 * @param {Object: shop} 店铺id
 * @param {Object: date} 日期 (默认值：当前日期)
 */
export function APIGetMinutelyCustomerData ({ shop, date = '' }) {
  return service({
    url: `/api/shops/${shop}/minutely-stats/?date=${date}`,
    method: 'get'
  })
}

/**
 * 区域统计(每小时)连续多日
 * @param {Object: start} 开始时间
 * @param {Object: end} 结束时间
 */
export function APIGetAreaFlowDataInRange ({ shop, start, end }) {
  return service({
    url: `/api/shops/${shop}/zone-hourly-range-stats/?start_date=${start}&end_date=${end}`,
    method: 'get'
  })
}

/**
 * 区域统计连续多日 顾客总数&平均停留时长
 * @param {Object: start} 开始时间
 * @param {Object: end} 结束时间
 */
export function APIGetHourlyAreaCustomerDataInRange ({ shop, start, end }) {
  return service({
    url: `/api/shops/${shop}/zone-range-average-time-stats/?start_date=${start}&end_date=${end}`,
    method: 'get'
  })
}
